// 防抖函数,可以设置默认延迟时间
export function debounce(func,delay){
  let timer = null
  return function (...args){
    if (timer) clearTimeout(timer)
    timer = setTimeout(() =>{
      func.apply(this,args)
    },delay)
  }
}
// 正则表达式  字符串匹配利器
export function formatDate(date, fmt){
  // 1.获取年份
  // y+是代表不知道有几个y，+表示一个或者多个，*表示0个或者多个，？表示0个或者1个
  // 2018是yyyy 18是yy
  if(/(y+)/.test(fmt)){
    fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
  }
  // 获取月、日、时、分、秒
  let o = {
    'M+': date.getMonth() + 1,
    'd+': date.getDate(),
    'h+': date.getHours(),
    'm+': date.getMinutes(),
    's+': date.getSeconds(),
  };
  for(let k in o){
    if(new RegExp(`(${k})`).test(fmt)) {
      let str = o[k] + '';
      fmt = fmt.replace(RegExp.$1, (RegExp.$1.length ===1) ? str : padLeftZero(str));
    }
  }
  return fmt
};
// 用0补齐两位  04:04:04
function padLeftZero(str){
  return('00' + str).substr(str.length);
};
